package com.itheima.health.dao;

import com.itheima.health.pojo.CheckGroup;
import com.itheima.health.pojo.Setmeal;

import java.util.HashMap;
import java.util.List;

/**
 * 套餐查询dao
 */
public interface SetMealDao {
    /**
     * 分页查询套餐
     * @param queryString
     * @return
     */
    List<Setmeal> findPage(String queryString);

    /**
     * 查询所有检查组
     * @return
     */
    List<CheckGroup> findAll();

    /**
     * 向t_setmeal添加套餐
     * @param setmeal
     */
    void addSetmeal(Setmeal setmeal);

    /**
     * 中间关系表添加关系
     * @param map
     */
    void setCheckGroupAndSetmeal(HashMap<String, Object> map);

    /**
     * 根据id查询套餐
     * @param id
     * @return
     */
    Setmeal findById(Integer id);


    /**
     * 清除原有的group与Setmeal的中间关系
     * @param setmeal
     */
    void release(Setmeal setmeal);

    /**
     * 更新套餐信息
     * @param setmeal
     */
    void updateSetmeal(Setmeal setmeal);

    /**
     * order里面有没有套餐.有则不能删除
     * @return
     * @param id
     */
    int isContainedInOrder(Integer id);

    /**
     * 确认套餐是否包含检查组,有则不能删除
     * @return
     * @param id
     */
    int isContainGroups(Integer id);

    /**
     * 删除套餐
     * @param id
     */
    void deleteSetmeal(Integer id);

    /**
     * 查询所有套餐信息
     * @return
     */
    List<Setmeal> getAllSetMeal();
}
